package com.probiz.estore.content.service;

import java.util.List;
import java.util.Map;

import com.probiz.estore.common.model.content.Advertisement;
import com.probiz.estore.common.model.content.AdvertisementPublish;
import com.probiz.estore.content.model.AdvertisementFullyModel;
import com.probiz.estore.core.service.GenericManager;

/**
 * Advertisement Business Delegate (Proxy) Interface to handle communication between web and persistence layer.
 * Developer introduced interfaces should be declared here. Won't get overwritten.
 * 
 */
public interface AdvertisementManager  extends GenericManager<Advertisement>{
	
	/**
	 * 完全保存广告
	 *
	 * @param advertisementFullyModel 广告advertisementFullyModel
	 * @return 返回参数
	 */
	public Map<String, Object> saveFully(AdvertisementFullyModel advertisementFullyModel);
	
	/**
	 * 根据目录id 广告位置id获得广告列表
	 */
	public List<Advertisement> getAdvertisementsForFront(Integer adPositionTypeId,Integer categoryId);
	/**
	 * 根据目录id 广告类型编码获得要显示的广告和广告类型复杂对象。
	 * @param adPositionTypeId
	 * @param categoryId
	 * @return 如果找到广告位置和广告(多于等于1个),则返回对象，否则返回null
	 */
	public AdvertisementPublish getAdvertisementPublishForFront(String positionCode,Integer categoryId);
	
}
